The present invention relates to a knowledge based system configured by adopting artificial intelligence, and more particularly to a knowledge based system capable of configuring a rule base without considering conflict resolution strategy.
Conflict as called in a knowledge based system means a state that where there are a plurality of rules executable whose condition clauses match data to be inferred. A set of an executable rule and a plurality of data matching the rule is called an instantiation. A group of a plurality of instantiations is called a conflict set. The relationship between instantiations and a conflict set is illustrated in FIG. 8. Selecting one of instantiations from a conflict set is called conflict resolution. Several conflict resolution strategies are shown in the document by P. H. Winston: Artificial Intelligence (2nd Edition, p. 170 to p. 171, Adison-Wesley Publishing Company, 1984).
Examples of conflict resolution strategies are shown below:
(1) Rule Priority Order: follow a priority order previously assigned to each rule.
(2) First Match: search rules in the order stored in a rule base and select the first found rule which matches data.
(3) Recent Executed Rule: consider the most recently executed rule to have the highest priority.
(4) Condition Clause Complexity: give the highest priority to the rule having the most complicated condition clause.
There is also known a strategy using a combination of the above-described strategies. A general expert system configuration language OPS5 adopts a complicated strategy which uses a combination of a number indicative of the up-to-dateness of data within an instantiation and an index indicative of the complexity of the rule condition clause.